ARMv7 may not support Virtualization Extensions
authorEtienne Carriere <etienne.carriere@linaro.org>
Wed, 8 Nov 2017 13:38:33 +0000 (14:38 +0100)
committerEtienne Carriere <etienne.carriere@linaro.org>
Wed, 8 Nov 2017 13:38:33 +0000 (14:38 +0100)
commit64cc6e91e819ccbf5fe3bf8a5c177b8fa8012d8c
tree6cc714edf449c3e44fde7840598d30089edd9f57
parent51b992ecec92b9dcca410a2c3716f45daca5afd1
ARMv7 may not support Virtualization Extensions

ARMv7-A Virtualization extensions brings new instructions and resources
that were supported by later architectures. Reference ARM ARM Issue C.c
[DDI0406C_C].

ERET and extended MSR/MRS instructions, as specified in [DDI0406C_C] in
ID_PFR1 description of bits[15:12] (Virtualization Extensions):
 A value of 0b0001 implies implementation of the HVC, ERET, MRS
 (Banked register), and MSR (Banked register) instructions. The ID_ISARs
 do not identify whether these instructions are implemented.

UDIV/SDIV were introduced with the Virtualization extensions, even if
not strictly related to the virtualization extensions.

If ARMv7 based platform does not set ARM_CORTEX_Ax=yes, platform
shall define ARMV7_SUPPORTS_VIRTUALIZATION to enable virtualization
extension related resources.

Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
common/aarch32/debug.S
include/common/aarch32/asm_macros.S
include/lib/aarch32/smcc_macros.S
make_helpers/armv7-a-cpus.mk